Skip to content

Conversation

@abbesBenayache
Copy link
Contributor

@abbesBenayache abbesBenayache commented Oct 29, 2025

Add support for bulk processing

App output result.json changes

// single protectedData
{
  "success": boolean,
  "error"?: string,
  "protectedData"?: address,
  "isEmailValid"?: boolean
}
// protectedData bulk
{
  "success": boolean, // global success (no fail)
  "error"?: "Partial failure",
  "totalCount"?: number,
  "successCount"?: number,
  "errorCount"?: number,
  "results"?: {
    "index": number,
    "protectedData"?: address,
    "success": boolean,
    "error"?: string,
    "isEmailValid"?: boolean
  }[]
}

Callback changes:
The validation now uses 2 bits to indicate that validation was performed, and the validation result

  • email valid (0b11) 0x0000000000000000000000000000000000000000000000000000000000000003
  • email invalid (0b10) 0x0000000000000000000000000000000000000000000000000000000000000002
  • validation not performed (0b00) 0x0000000000000000000000000000000000000000000000000000000000000000
  • legacy email valid (0b01) 0x0000000000000000000000000000000000000000000000000000000000000001 is supported for backward compatibility, but not produced

tests:

BREAKING CHANGE: result file renamed to result.json; single protectedData result file now contains {"success": <boolean>, "protectedData"?: <address>, "isEmailValid"?: <boolean>, "error"?: <string> }; upon error, the iapp will now exit 0 and output "success": false and "error": <string> rather than falling the task.

BEGIN_COMMIT_OVERRIDE
feat(iapp)!: add bulk processing support (#234)

BREAKING CHANGE: result file renamed to result.json; single protectedData result file now contains {"success": boolean, "protectedData"?: address, "isEmailValid"?: boolean, "error"?: string }; upon error, the iapp will now exit 0 and output "success": false and "error": string rather than falling the task.
END_COMMIT_OVERRIDE

@abbesBenayache abbesBenayache temporarily deployed to arbitrum-sepolia-dev October 29, 2025 15:40 — with GitHub Actions Inactive
@abbesBenayache abbesBenayache force-pushed the feature/iapp-support-bulk-processing branch from c732e8f to a26430b Compare October 31, 2025 08:43
@abbesBenayache abbesBenayache temporarily deployed to arbitrum-sepolia-dev October 31, 2025 08:56 — with GitHub Actions Inactive
@PierreJeanjacquot PierreJeanjacquot changed the title feat(iapp): add bulk processing support feat(iapp)!: add bulk processing support Nov 12, 2025
abbesBenayache and others added 5 commits November 12, 2025 16:41
- Move index parameter into params object in processProtectedData
- Compute datasetFilename from index inside processProtectedData
- Move result.json writing to start function (from processProtectedData)
- Change result.txt to result.json for better semantic accuracy
- Update bulk processing structure: total-processed → total-count, protected-data-results → results, remove status field
- Rename dataset to protected-data in results and error messages
- Improve error messages with 'Cause:' prefix for bulk processing errors
- Update iexec dependency to ^8.22.0
- Update tests to match new structure
- App always create result files
- upon success `result.json` contains `"success": true` (rather than `"status": 200`)
- upon failure `result.json` contains `"success": false` and the error message in `"error"`
@PierreJeanjacquot PierreJeanjacquot force-pushed the feature/iapp-support-bulk-processing branch from 3fae2e1 to 1fc7455 Compare November 12, 2025 16:42
@PierreJeanjacquot PierreJeanjacquot merged commit 3458c95 into main Nov 17, 2025
10 checks passed
@PierreJeanjacquot PierreJeanjacquot deleted the feature/iapp-support-bulk-processing branch November 17, 2025 15:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants